import 'package:extended_image/extended_image.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';

class VenueEntity {
  String image;
  String title;
  String content;

  VenueEntity(this.image, this.title, this.content);

  static VenueEntity fake() {
    return VenueEntity(
      "https://upload-images.jianshu.io/upload_images/5809200-a99419bb94924e6d.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240",
      "成都市高新区100号",
      "已订阅这是一个测试数据",
    );
  }
}

class VenueItemCell extends StatelessWidget {
  final VenueEntity _entity;

  VenueItemCell(this._entity);

  @override
  Widget build(BuildContext context) {
    return Container(
      height: 168.w,
      // width: 350.w,
      //    Image.network(
      //   url ?? '',
      //   width: width,
      //   height: height,
      //   fit: fit,
      //   cacheWidth: 200,
      //   // cacheHeight: 150,
      // )
      // decoration: BoxDecoration(
      //     image: DecorationImage(
      //         image: CachedNetworkImageProvider(_entity.image, maxWidth: 200),
      //         //  ExtendedNetworkImageProvider(url ?? '',
      //         //     cacheRawData: false, scale: 0.1),
      //         fit: BoxFit.cover),
      //     borderRadius: BorderRadius.circular(12)),
      child: Stack(
        children: [
          Positioned.fill(
            child: ClipRRect(
              borderRadius: BorderRadius.circular(12),
              child: ExtendedImage.network(
                _entity.image,
                height: 168.w,
                fit: BoxFit.cover,
                compressionRatio: 0.6,
                cacheHeight: 168,
                width: 350,
                cache: false,
                loadStateChanged: ((ExtendedImageState state) {
                  switch (state.extendedImageLoadState) {
                    case LoadState.completed:
                      return state.completedWidget;
                    default:
                      return SizedBox();
                  }
                  // return SizedBox();
                }),
              ),
            ),
            // child: NetworkLoadImage.loadNetworkImage(_entity.image,
            //     height: 168.w, fit: BoxFit.cover),
          ),
          Positioned(
            bottom: 0,
            left: 0,
            right: 0,
            child: Container(
              height: 60.w,
              decoration: BoxDecoration(
                borderRadius: BorderRadius.only(
                    bottomLeft: Radius.circular(12),
                    bottomRight: Radius.circular(12)),
                gradient: LinearGradient(
                    begin: Alignment.bottomCenter,
                    end: Alignment.topCenter,
                    colors: [
                      Color(0xff131313).withOpacity(0.79),
                      Color(0xff242424).withOpacity(0),
                      // Colors.red
                    ]),
              ),
            ),
          ),
          Positioned.fill(
            child: Container(
              padding: EdgeInsets.symmetric(horizontal: 10, vertical: 15),
              child: Column(
                mainAxisAlignment: MainAxisAlignment.end,
                children: [
                  Row(
                    children: [
                      Flexible(
                        child: Text(
                          _entity.title,
                          style: TextStyle(
                            color: Colors.white,
                            fontSize: 18,
                            fontWeight: FontWeight.w500,
                          ),
                        ),
                      ),
                    ],
                  ),
                  // if (_entity.content.isNotEmpty)
                  //   Row(
                  //   children: [
                  //     Flexible(
                  //       child: Text(
                  //         _entity.content,
                  //         style: TextStyle(
                  //           color: Colors.white.withOpacity(0.8),
                  //           fontSize: 14,
                  //           fontWeight: FontWeight.w500,
                  //         ),
                  //       ),
                  //     ),
                  //   ],
                  //  ),
                ],
              ),
            ),
          ),
        ],
      ),
    );
    // var content = Stack(
    //   children: [
    //     NetworkLoadImage.loadNetworkImage(
    //       _entity.image,
    //       // height: 168.w,
    //       // width: 350.w,

    //     ),
    //     Positioned(
    //       bottom: 0,
    //       left: 0,
    //       right: 0,
    //       child: Container(
    //         height: 60.w,
    //         decoration: BoxDecoration(
    //           gradient: LinearGradient(
    //               begin: Alignment.bottomCenter,
    //               end: Alignment.topCenter,
    //               colors: [
    //                 Color(0xff131313).withOpacity(0.79),
    //                 Color(0xff242424).withOpacity(0),
    //                 // Colors.red
    //               ]),
    //         ),
    //       ),
    //     ),
    //     Positioned.fill(
    //       child: Container(
    //         padding: EdgeInsets.symmetric(horizontal: 10, vertical: 15),
    //         child: Column(
    //           mainAxisAlignment: MainAxisAlignment.end,
    //           children: [
    //             Row(
    //               children: [
    //                 Flexible(
    //                   child: Text(
    //                     _entity.title,
    //                     style: TextStyle(
    //                       color: Colors.white,
    //                       fontSize: 18,
    //                       fontWeight: FontWeight.w500,
    //                     ),
    //                   ),
    //                 ),
    //               ],
    //             ),
    //             // if (_entity.content.isNotEmpty)
    //             //   Row(
    //             //   children: [
    //             //     Flexible(
    //             //       child: Text(
    //             //         _entity.content,
    //             //         style: TextStyle(
    //             //           color: Colors.white.withOpacity(0.8),
    //             //           fontSize: 14,
    //             //           fontWeight: FontWeight.w500,
    //             //         ),
    //             //       ),
    //             //     ),
    //             //   ],
    //             //  ),
    //           ],
    //         ),
    //       ),
    //     ),
    //   ],
    // );
    // return ClipRRect(
    //   borderRadius: BorderRadius.all(Radius.circular(12)),
    //   child: content,
    // );
  }
}
